package com.company.cloud.mall.modules.app.service;

import java.math.BigDecimal;

import com.company.cloud.common.bean.LoginSimpleUserInfo;
import com.company.cloud.mall.modules.app.models.PayApplyModel;
import com.company.cloud.mall.modules.app.models.PayResultModel;

public interface ShopOnlinePayService {


    /**
     * 第三方支付申请
     */
    public PayApplyModel payApply(String companyNo, String sn, BigDecimal fund, String paymentChannel, String returnUrl, LoginSimpleUserInfo userInfo);

    /**
     * 第三方支付结果查询
     */
    public PayResultModel queryPayResult(String companyNo, String paysn, String paymentChannel);

    /**
     * 第三方支付退款申请
     *
     * @param companyNo:公司编号
     * @param payChannel:第三方支付渠道
     * @param paySn:支付流水号
     * @param payFund            支付金额
     * @param refundSn           退款流水号
     * @param refundFund         退款金额
     */
    public String payRefundApply(String companyNo, String payChannel, String paySn, BigDecimal payFund, String refundSn, BigDecimal refundFund, String remark);

    /**
     * 第三方支付退款结果查询
     */
    public PayResultModel queryPayRefundResult(String companyNo, String paysn, String paymentChannel);


}
